Shell Script দিয়ে ডেটা ম্যানেজমেন্ট

Database Tutorials - মাইএসকিউএল (MySQL) - MySQL এর ব্যাকআপ অটোমেশন এবং স্ক্রিপ্টিং
281

Shell Script হল একটি স্ক্রিপ্টিং ভাষা যা কমান্ড লাইন ইন্টারফেস (CLI) থেকে কমান্ড ও প্রোগ্রাম চালাতে ব্যবহৃত হয়। MySQL বা অন্য যেকোনো ডেটাবেস সিস্টেমের ডেটা ম্যানেজমেন্ট করার জন্য Shell Script ব্যবহার করা যেতে পারে। Shell Script দিয়ে আপনি ডেটাবেস ব্যাকআপ নেওয়া, পুনরুদ্ধার করা, ডেটা আপডেট, ডেটা বিশ্লেষণ, অথবা ডেটাবেস সংক্রান্ত অন্যান্য কার্যক্রম স্বয়ংক্রিয়ভাবে করতে পারেন।

নিচে কিছু সাধারণ Shell Script এর উদাহরণ দেয়া হলো যেগুলি MySQL ডেটাবেসের সাথে ডেটা ম্যানেজমেন্টের জন্য ব্যবহৃত হতে পারে।


1. MySQL ডেটাবেস ব্যাকআপ নেওয়া (Backup MySQL Database)

এটি একটি সাধারণ Shell Script যা MySQL ডেটাবেসের ব্যাকআপ নেয় এবং তা একটি ফাইলে সংরক্ষণ করে।

Backup Script:

#!/bin/bash

# MySQL Credentials
USER="root"
PASSWORD="your_password"
DATABASE="your_database"
BACKUP_DIR="/path/to/backup/dir"
DATE=$(date +%F)

# Create a backup
mysqldump -u $USER -p$PASSWORD $DATABASE > $BACKUP_DIR/$DATABASE-$DATE.sql

# Check if the backup was successful
if [ $? -eq 0 ]; then
    echo "Backup successful! Saved as $DATABASE-$DATE.sql"
else
    echo "Backup failed!"
fi

ব্যাখ্যা:

  • mysqldump কমান্ড ব্যবহার করে ডেটাবেসের ব্যাকআপ নেওয়া হচ্ছে।
  • ব্যাকআপ ফাইলের নাম হিসেবে বর্তমান তারিখ ব্যবহার করা হয়েছে (যেমন: your_database-2024-11-23.sql)।
  • ব্যাকআপ সফল হলে, স্ক্রিপ্ট একটি সফল বার্তা দেখাবে।

2. MySQL ডেটাবেস পুনরুদ্ধার (Restore MySQL Database)

এই স্ক্রিপ্টটি ব্যাকআপ ফাইল থেকে MySQL ডেটাবেস পুনরুদ্ধার করতে ব্যবহৃত হয়।

Restore Script:

#!/bin/bash

# MySQL Credentials
USER="root"
PASSWORD="your_password"
DATABASE="your_database"
BACKUP_FILE="/path/to/backup/file.sql"

# Restore the database
mysql -u $USER -p$PASSWORD $DATABASE < $BACKUP_FILE

# Check if the restore was successful
if [ $? -eq 0 ]; then
    echo "Restore successful!"
else
    echo "Restore failed!"
fi

ব্যাখ্যা:

  • এই স্ক্রিপ্টে mysql কমান্ড ব্যবহার করে ব্যাকআপ ফাইল থেকে ডেটাবেস পুনরুদ্ধার করা হচ্ছে।
  • mysql -u $USER -p$PASSWORD $DATABASE < $BACKUP_FILE এই কমান্ডের মাধ্যমে আপনি ব্যাকআপ ফাইল থেকে ডেটাবেস পুনরুদ্ধার করতে পারবেন।

3. MySQL ডেটাবেসে ডেটা আপডেট করা (Update Data in MySQL Database)

এই স্ক্রিপ্টটি MySQL ডেটাবেসের মধ্যে একটি টেবিলের ডেটা আপডেট করার জন্য ব্যবহৃত হয়।

Update Script:

#!/bin/bash

# MySQL Credentials
USER="root"
PASSWORD="your_password"
DATABASE="your_database"

# Update query
QUERY="UPDATE your_table SET column_name='new_value' WHERE condition_column='condition_value';"

# Execute the query
mysql -u $USER -p$PASSWORD $DATABASE -e "$QUERY"

# Check if the update was successful
if [ $? -eq 0 ]; then
    echo "Data updated successfully!"
else
    echo "Failed to update data!"
fi

ব্যাখ্যা:

  • এখানে mysql -e কমান্ড ব্যবহার করা হয়েছে, যা SQL কুয়েরি সরাসরি স্ক্রিপ্ট থেকে চালায়।
  • আপনি স্ক্রিপ্টের মধ্যে SQL কুয়েরি লিখে তা সরাসরি চালাতে পারেন।

4. MySQL টেবিল থেকে ডেটা রপ্তানি (Export Data from MySQL Table)

এটি একটি স্ক্রিপ্ট যা MySQL টেবিল থেকে ডেটা CSV ফাইলে রপ্তানি করে।

Export Script:

#!/bin/bash

# MySQL Credentials
USER="root"
PASSWORD="your_password"
DATABASE="your_database"
TABLE="your_table"
OUTPUT_FILE="/path/to/output/data.csv"

# Export data to CSV file
mysql -u $USER -p$PASSWORD -e "SELECT * FROM $TABLE" $DATABASE > $OUTPUT_FILE

# Check if the export was successful
if [ $? -eq 0 ]; then
    echo "Data exported to $OUTPUT_FILE"
else
    echo "Data export failed!"
fi

ব্যাখ্যা:

  • এই স্ক্রিপ্টে SQL কুয়েরি দিয়ে নির্দিষ্ট টেবিলের সব ডেটা এক্সপোর্ট করা হচ্ছে। mysql এর মাধ্যমে একটি SQL কুয়েরি চালিয়ে টেবিলের সব ডেটা একটি ফাইলে রপ্তানি করা হয়।

5. MySQL টেবিলের তথ্য অনুসন্ধান (Query Data from MySQL Table)

এটি একটি স্ক্রিপ্ট যা MySQL টেবিল থেকে নির্দিষ্ট শর্তে ডেটা অনুসন্ধান করে এবং ফলাফল প্রদর্শন করে।

Search Script:

#!/bin/bash

# MySQL Credentials
USER="root"
PASSWORD="your_password"
DATABASE="your_database"
QUERY="SELECT column_name FROM your_table WHERE condition_column='value';"

# Execute the query and display the result
mysql -u $USER -p$PASSWORD $DATABASE -e "$QUERY"

ব্যাখ্যা:

  • mysql -e কমান্ড ব্যবহার করে SQL কুয়েরি চালানো হয় এবং ডেটাবেস থেকে ডেটা রিটার্ন করা হয়।
  • এই স্ক্রিপ্টে আপনি কাস্টম SQL কুয়েরি ব্যবহার করে ডেটাবেসে তথ্য অনুসন্ধান করতে পারেন।

6. MySQL টেবিল থেকে ডেটা মুছে ফেলা (Delete Data from MySQL Table)

এটি একটি স্ক্রিপ্ট যা MySQL টেবিল থেকে ডেটা মুছে ফেলতে ব্যবহৃত হয়।

Delete Script:

#!/bin/bash

# MySQL Credentials
USER="root"
PASSWORD="your_password"
DATABASE="your_database"

# Delete query
QUERY="DELETE FROM your_table WHERE condition_column='condition_value';"

# Execute the query
mysql -u $USER -p$PASSWORD $DATABASE -e "$QUERY"

# Check if the deletion was successful
if [ $? -eq 0 ]; then
    echo "Data deleted successfully!"
else
    echo "Failed to delete data!"
fi

ব্যাখ্যা:

  • DELETE SQL কুয়েরি দিয়ে আপনি MySQL টেবিল থেকে ডেটা মুছে ফেলতে পারেন।
  • এই স্ক্রিপ্টটি নির্দিষ্ট শর্তে ডেটা মুছে ফেলার জন্য ব্যবহৃত হয়।

Shell Script ব্যবহার করে ব্যাকআপ স্বয়ংক্রিয় করা

আপনি cron jobs ব্যবহার করে নির্দিষ্ট সময় অন্তর ব্যাকআপ স্ক্রিপ্ট চালাতে পারেন, যা একটি পূর্ণস্বয়ংক্রিয় ব্যাকআপ সিস্টেম তৈরি করে।

Cron Job Example:

  1. প্রথমে একটি Shell Script তৈরি করুন, যেমন backup.sh:

    #!/bin/bash
    mysqldump -u root -p'your_password' your_database > /backup/db_backup_$(date +\%F).sql
    
  2. তারপর, cron job সেটআপ করুন:

    crontab -e
    
  3. cron ফাইলে এন্ট্রি দিন:

    0 2 * * * /path/to/backup.sh
    

এটি প্রতিদিন ২ টায় backup.sh স্ক্রিপ্ট চালাবে এবং MySQL ডেটাবেসের ব্যাকআপ নিবে।


সারাংশ

Shell Script ব্যবহার করে আপনি MySQL ডেটাবেসের ব্যাকআপ নেওয়া, ডেটা আপডেট, অনুসন্ধান, রপ্তানি এবং মুছে ফেলার মতো অনেক ডেটা ম্যানেজমেন্ট কাজ স্বয়ংক্রিয় করতে পারেন। স্ক্রিপ্টিংয়ের মাধ্যমে আপনি একাধিক SQL কুয়েরি একত্রে চালাতে পারবেন এবং আপনার ডেটাবেস ম্যানেজমেন্ট আরও সহজ এবং কার্যকরী করতে পারবেন।

Content added By
Promotion
NEW SATT AI এখন আপনাকে সাহায্য করতে পারে।

Are you sure to start over?

Loading...